23

» WarCraft 3 / Не добавляет в группу

Похожие вопросы:

ответ
Тебе его стрелялка то нужна? Ну изи же, отпрынгул и помахал руками, обычный канал с временем каста и параметром - отключить прочие способности.
Остальное - 4 атаки, ну это изи делаем из даммиков (мне чето приглянулась модель орб атаки маски вампиризма) ну и двигаем их линено от героя в нужную сторону, и ищим по пути врагов, наносим им урон от лица героя + проверяем какие у героя есть абилки и орбы, эмитируем орбы и пассивки, ну манабрейк - сжигаем ману и наносим еще урона, рисуем модель, баш - ну молот бурь в голову, дезоль 0- ну дамик с орбом дезоля.
Сам хотел целиком пангольера слепить, но ка кто забил - нет норм модели.
ответ
А группы в массиве CreepsGroup созданы? Нужно либо создавать группы при инициализации, проходясь циклом по массиву, либо в константах указать "размер" массива, и тогда они будут сами созданы. То есть нужно 12 групп -- ставишь размер 12, группы будут созданы в ячейках с 0 по 11.
ответ
Ну, Варкрафт 3 в целом не любит когда слишком много юнитов одновременно на экране, а если учитывать, что у них ещё возможно есть и модель, то графическая часть начинает сильно резать фпс, с этим особо ты ничего не сделаешь. По поводу твоего кода, слишком напоминает GUI особенно проверками, ниже как бы я написал, но так как это отрывок и нет пояснения что в целом код должен делать, то я не знаю сколь близко он выполнит твои цели/нужды.
Код
globals
    timer gg_timer_Move = null
endglobals

function GetAxisAngle takes real fromX, real fromY, real targX, real targY returns real
	return Rad2Deg( Atan2( targY - fromY, targX - fromX ) )
endfunction

function GetAxisDistance takes real castX, real fcastY, real targX, real targY returns real
	return SquareRoot( Pow( targX - castX, 2 ) + Pow( fcastY - targY, 2 ) )
endfunction

function NewX takes real locX, real dist, real angle returns real
	return locX + dist * Cos( Deg2Rad( angle ) )
endfunction

function NewY takes real locY, real dist, real angle returns real
	return locY + dist * Sin( Deg2Rad( angle ) )
endfunction

function Move_GroupActionsHandler takes unit target returns nothing
    local integer uid   = GetUnitTypeId( target )
    local real speed    = 8   //скорость движения | Локальные переменные советую писать с маленькой буквы.
    local real targX    = GetUnitX( target ) // GetWidgetX не быстрее GetUnitX, не нужно этого делать :)
    local real targY    = GetUnitY( target ) // GetWidgetY не быстрее GetUnitY, не нужно этого делать :)
    local real moveX    = 0.
    local real moveY    = 0.
    local real angle    = 0.

    if udg_Time >= 6000 then
        if uid >= 'h044' and uid <= 'h046' then
            call RemoveUnit( target )
        else
            call UnitDamageTargetBJ( udg_Caster, target, 2000., ATTACK_TYPE_CHAOS, DAMAGE_TYPE_UNKNOWN )
        endif
    else
        if GetAxisDistance( udg_CasterX, udg_CasterY, targX, targY ) <= udg_Time / 10 * 8 then // Сделай один раз враппер и будет проще.
            if RAbsBJ( targX ) <= 4000 and RAbsBJ( targY ) <= 4000 then    //чтобы не двигал если юнит на краю карты | не нужно каждый раз читать местоположение по-новой.
                if not IsUnitType( target, UNIT_TYPE_STRUCTURE ) and target != udg_Caster and target != udg_DummyCaster then
                    set angle = GetAxisAngle( udg_CasterX, udg_CasterY, targX, targY ) //угол между координатами кастера и коорд юнита | через враппер.
                    set moveX = NewX( moveX, speed, angle )
                    set moveY = NewY( moveY, speed, angle ) // В твоей же системе было с минусом, ибо угол считался от кастера, собственно, если нужно отталкивание, но нужен +, если что просто замени на -speed

                    if not IsTerrainPathable( moveX, moveY, PATHING_TYPE_FLYABILITY ) or uid == 'h045' or uid == 'h046' then // лучше в начале проверить есть ли смысл двигать или нет.
                        // + RAbsBJ( 50 ) дал бы не совсем правильные результаты, ибо координаты могут быть отрицательными...
                        if GetTerrainType( moveX, moveY ) != 'Jdrt'  then
                            call SetTerrainType( moveX, moveY, 'Jdrt', -1, 1, 0 )       //если тип земли не изменен на этот, изменить его
                        endif
                        call SetUnitX( target, moveX )  //двигаем юнита
                        call SetUnitY( target, moveY )
                    endif
                endif
            endif
        endif
    endif
endfunction

function Move_GroupActions takes nothing returns nothing  //двигаем всех юнитов от точки кастера??
    call Move_GroupActionsHandler( GetEnumUnit( ) )
endfunction

function Move_Actions takes nothing returns nothing
    local integer i = 0
    local integer pid = GetOwningPlayer( udg_Caster )

    if udg_Time == 0 then  //в начале создаются даммики 45 штук...
        loop
            exitwhen i == 45
            set udg_MoveAngle = i * 8.
            set udg_Dummy[ i ] = CreateUnit( Player( pid ), 'h045', udg_CasterX - 200 * Cos( udg_MoveAngle ), udg_CasterY - 200 * Sin( udg_MoveAngle ), udg_MoveAngle )
            set i = i + 1
        endloop

        if udg_Group == null then
            set udg_Group = CreateGroup( )
        endif
    else
        if udg_Time <= 6000 then
            set i = 0
            loop
                exitwhen i > bj_MAX_PLAYERS // цикл всех игроков ничем не хуже...
                if Player( i ) == PLAYER_SLOT_STATE_PLAYING then
                    call GroupEnumUnitsOfPlayer( udg_Group, Player( i ), null )
                    call ForGroup( udg_Group, function Move_GroupActions )
                    call GroupClear( udg_Group )
                endif
                set i = i + 1
            endloop
        else
            call PauseUnit( udg_Caster, false )
            call PauseTimer( gg_timer_Move )
        endif
    endif

    set udg_Time = udg_Time + 10
endfunction

//===========================================================================
function InitTrig_Move takes nothing returns nothing
    set gg_timer_Move = CreateTimer( )
    call TimerStart( gg_timer_Move, .01, true, function Move_Actions )
endfunction
ответ
Полноценный псевдоконтроль возможен лишь с помощью мемхака.
Прочее же - смотри как сделано в доте, ульт спектры был в опен доте и там есть фищка, атаку то стопить можно но толку мало.

23

» WarCraft 3 / Проблема с Model editor

Похожие вопросы:

ответ
русские буквы в пути к вару
всё на диске c
омг
ответ
советую переименовать модель\заребутить комп
текстуры стандартные юзал, я так понимаю
ответ
Viktor2, а ты реально импортировал все текстуры (в кол-ве 21шт ) в карту? Если хотя бы одну забыл -модель не будет отображаться.
ответ
Arak1da, да ты и вправду дурак.
Линейная интерполяция не делает вещи плавнее. Это равномерная интерполяция, линейная, так не движутся "живые" персонажи. За "плавностью" к Безье или Эрмиту. xgm.guru/p/wc3/anims-a-ya-3
А по поводу темы топика - могу обратить внимание автора на:
  1. Менял ли ты структуру исходного скелета, делая новую анимацию (имею ввиду только исходные кости, например, кость головы.)? Если да, то как?
  2. Попробуй посмотреть, что у тебя с интерполяцией для вращения по нужной оси на рутовом объекте.
ответ
Вроде бы удалось решить проблему самостоятельно. Ошибка действительно была элементарной - идентификатор не устраивал введённый туда заглавный символ, а я не знал об этом. Простите за беспокойство.

23

» WarCraft 3 / Нативки

Похожие вопросы:

ответ
UrsaBoss, разные типы, при чем они могут взаимодействовать (например положительный магический бафф)
native UnitHasBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns boolean
native UnitRemoveBuffsEx takes unit whichUnit, boolean removePositive, boolean removeNegative, boolean magic, boolean physical, boolean timedLife, boolean aura, boolean autoDispel returns nothing
removePositive - позитивный / removeNegative - негативный
magic - магический / physical - физический
timedLife - время жизни (у призываемых существ)
aura - ауры
autoDispel - ??? (скорее всего есть какие-то скилы с баффами отключающие)
Для конкретной проверки есть Unit Has Specific Buff
можно проверять самому. берешь создаешь тестовую карту, создаешь двух юнитов, создаешь триггер с периодической проверкой дебагом и проверяешь у одного из них есть ли бафф. И в игре проверяешь
ответ
Ярг Восьмой:
Возможно это было сделано в старой версии JPNG NG 5d, попробуйте отредактировть этой версией, и найти ту триггерную фу-ию и изменить исп. кастом скрипт, который есть по ссылке, которую предложил факов. Как поменяете, сохраните.
Потом, откройте через JPNG Rebuild, и должно сработать.
Это ошибка возникает из-за несоответствие граф. части триггеров, для GUI посредством одного текстового файлика настройки для WE.
Должно помочь.
ответ
Ярг Восьмой:
Они воспроизводят анимации эффект, смотри в константах. Там они на все виды анимаций расписаны. Короче, это как SetUnitAnimation, но только для эффектов.

23

» WarCraft 3 / Импорт файлов

Похожие вопросы:

ответ
Почему по одиночке, можно же сразу всей пачкой? С тем но что пути не сохранятся.
И импортируются они так же пачкой. Выдели отдельную папку и всё.
ответ
Боже мой, да так всегда в варкрафте!
После импорта просто сохрани,а потом выйди и заново зайди в редактор(((
ответ
старый запрос
ответ
~8gabriel8:
Что случилось-то? Одни и те же вопросы по 2-3 раза.
Вот есть программа xgm.guru/p/wc3/map-import-manager

23

» WarCraft 3 / Бинд клавиш.

Похожие вопросы:

ответ
Есть в варике. ctrl + 1,2,3,4,5,6,7.. - бинд отряда
Ещё в справке описаны подобные возможности.
ответ
Uint32, да даже на ходу, ну именно в моей карте этого не было, но это возможно... на всё том же мемхаке
выгружаем библиотеку из памяти
правим конфиг
снова подгружаем библиотеку
Вуаля хоткей изменен
Но это всё мемхак и только 126 патч
На 131+ есть более крутая фишка, это смена хоткея вообще и смена описания
Только я так и не пойму зачем тебе это.. на мемхаке это всё сложно и не актуально, ибо есть инструменты по круче

Кстати я не замечал в 131, в 132 заметил, что хоткей способности дописывается сам, достаточно его указать лишь в параметрах РО

23

» WarCraft 3 / Провокация

Похожие вопросы:

ответ
открываем архивы варика и достаём оттуда из папочки scripts файлы с расширением ai
это и будет аи написанный на jass
далее ты должен разобраться в файлах людей и эльфов и скопировать кусок отвечающий за этот спел из эльфов в хуманов

23

» WarCraft 3 / Пассивная цепь молний

Похожие вопросы:

ответ
Так ты же выключаешь триггер на 18 секунд вот он и не срабатывает.
Поставь условие, что герыч не имеет абилки-пустышки, если не имеет - дать её и через 18 сек забрать и пустить молнию.
Правда я не уверен насчёт того, отловится ли attacking unit через 18 сек вейта, проверь...
Вообще, если устраивает орбом - то даёшь "сферу молний" с эффектом "цепь молний", у которой 18 сек перезарядка(у цепи не у сферы)
ответ
Ну если делать через орб эффект - у предметов есть способности "сфера замедления" и "сфера молний (новая)". Эти способности позволяют с указанным шансом применять в цель атаки указанный скилл.

23

» WarCraft 3 / ИИ для кампании

Похожие вопросы:

ответ
Используйте поиск перед созданием вопроса
Вот тема
ответ
Код не повлияет особо на вес кампании. Время можно экономить переделывая одну и ту же карту а не создавая новую (Переделка только ланда и квестовых триггеров) Но если 8 карт готовы - то copy-paste самый простой способ.
Есть еще утилита которая облегчает внедрение обьектов/наработок. Сам не пользовался
ответ
Ошибка в коде, jass работает везде. pro100master, пишет бред, ибо незнает что все карты для warcraft 3 имеют сценарий на Jass, т.к все ваши триггеры в итоге преобразуются в jass и хранятся в war3map.j, тоже самое и с АИ, которое для кампаний изначально написано на jass и прекрасно работает.
Смотрите где у вас ошибки, cjass\vjass интерпретаторы могут не верно работать с картами кампаний, пробуйте написать код на чистом jass без надстроек.
ответ
Нашел ошибку:
В функции SuicideUnits (в самом низу) должно находиться строго 10 значений. У меня 9. Если приписать еще 0, то все работает.
ответ
KiWave, а вот ии такая штука что хз что ему не хватает, бывает они ломаются и только добывают ресурсы. Тщательно проверь настройки всех зданий и доступны ли они ИИ по ресурсам и требованиям, просто раздай контроль над ИИ себе и сиди смотри за ним.

23

» WarCraft 3 / Система создания предметов

Похожие вопросы:

ответ
Zeuz, руна пустышка является предметом а значит хэндлом
надо просто не забывать обнулять переменные
можно ещё удалить её перед обнулением если так хочешь
утечки возникают только при криворукой работе с хэндлами
если так хотите избавится от утечек то лучше почитайте статьи вместо того чтобы строить костыльную меху
ответ
VetsaN, таких событий нету
надо записывать все предметы в бд и периодическим таймером отслеживать их состояние
смерть предмета можно отследить с помощью TriggerRegisterDeathEvent но её использование нежелательно
либо делай все предметы юнитами
вот статья про бд
ответ
Если квест активен и не выполнен, а убитый - волк, то прибавляем 1 к переменной-счётчику для квеста. Если переменная равна 5, то засчитать выполнение квеста.
ответ
Alexey103:
Extremator, Мне нужно знать как занести тип юнита которого нет на карте в переменную!
Очень просто
globals
globals
	integer array data_UnitType
endglobals
set data_UnitType[1] = 'u001' // integer
set data_UnitType[2] = 'u002'
set data_UnitType[3] = 'u003'

23

» WarCraft 3 / Даммикаст предметом

Похожие вопросы:

ответ
В 1.31 можно, по идее, просто триггерно убрать Anss из предмета на время и потом вернуть обратно, вместо жонглирования самими предметами. Мемхак, думаю, так тоже может.

23

» WarCraft 3 / Области и перемещение между ними

Похожие вопросы:

ответ
ты отдал приказ перейти атакую противников
он будет идти атакуя всех встретившихся врагов
если враги найдены то он их атакует
если врагов нету то он идёт
если тебе нужно чтобы шли не атакуя врагов то отдай просто приказ "move"

23

» WarCraft 3 / Отмена приказа

Похожие вопросы:

ответ
Очень просто, проверяем каст по приказу юза предмета и если цель неподходящая то дропаем предмет юниту под ноги, а потом заставляем подобрать его.
ответ
вот пример
проверяем выделен, но есть некоторые вылеты. Нужно выключать/включать тригг на ордер, проверять что умер гер и так далее. у меня от убийства героя вылетает почему-то. еще вылет от не существующего номера игрока (игрок с номером -1 не существует)
ответ
Ты хочешь сделать такую механику в своей карте?
Или тебя просто напрягает, что такое есть в 1 доте?
Нужны холодные тесты по идее хайд юнита и короткая неуязвимость ДОЛЖНЫ сбивать очередь приказов, весьма странно, что этого не происходит
ответ
есть горячая клавиша отмены. Но это работать должно, если у игрока юнит выделен. И кнопка отмены не заблочена и не спрятана. Горячая клавиша напрямую связана с видимостью клавиши, пробовал прятать кнопку, и тогда также не работает и hotkey
function ForceUICancelBJ takes player whichPlayer returns nothing
    if (GetLocalPlayer() == whichPlayer) then
        // Use only local code (no net traffic) within this block to avoid desyncs.
        call ForceUICancel()
    endif
endfunction

xgm.guru/p/wc3/220178 если надо, чтобы не бежал строить. Вы уже отдали приказ строить в точку, и нужно сразу же отдать отмену. сразу же отменить можно. Но приказ стоп обычно не срабатывает.
xgm.guru/p/wc3/218129 приказ отмены. Идет на апгрейды, тренировку и прочее. Вы может неправильно отлов делаете?
ответ
world_editor, я нашёл путь к решению! Правда, есть косяки..
Движение - это тоже способность. А если нажата одна способность, то нельзя нажать применение другой способности. Что это значит? То, что если нажата вторая способность, то первая не нажата. Ставим применение обеих способностей (движение и стоп) в один триггер, разделяя их логической переменной. А изменение значения этой переменной кидаем в триггеры отлова способностей/приказов.
Но вот косяки: из-за периодичности триггера (даже при изменении на 0.03 с.) переменная не успевает сразу поменяться, из-за чего приказ второй способности прожимается несколько раз и слышно щелчки. А если нажать левую кнопку во время движения, она сработает так же, как "Стоп". Нужно каким-то образом поменять значения переменных, но где - пока не могу сообразить, голова не варит уже. Попробуй продолжить самостоятельно.

23

» WarCraft 3 / Отследить получение способности

Похожие вопросы:

ответ
можешь посмотреть как тут перехватывается урон. хоть я и не рекомендую делать через выдачу неуязвимости, лучше повышать как нибудь максимальное хп если урон выше чем текущее возможное восполнение хп, а затем вернуть обратно как было и провести нужные манипуляции
ответ
ПС. Давать спеллбук после найма (чтобы он сам пропадал после морфа) героя нельзя, ибо в этом случае, если герой не успел или не захотел выбрать талант, то у него пропадает такая возможность после морфа.
Делать нужно именно так. И что бы у тебя не было здесь ошибки, тебе нужно каким-либо образом обозначить то, что у героя есть непотраченный талант. Т.е. ты будешь давать герою спеллбук после морфа, если у него есть доступные очки талантов.
И ещё кое-что: если ты триггерно даёшь спеллбук и пермоментишь его (тоже триггерно), то после морфа он не пропадаёт, а если ты его отнимаешь - он не возвращается (т.е. нету лишних ненужных появлений/исчезновений абилки).
А так же смотри что бы спеллбук не остался пустым, решается это пермоментом абилок внутри спеллбука.
ответ
NatriY, все магические заклинания, наносящие урон. например можно переделать все стандартные близзардские абилы, где есть урон, на триггерные кастомные абилы. И радуемся). Это рили.

23

» WarCraft 3 / Иконки дота 2

Похожие вопросы:

ответ
Аура выносливости, меняем её на пустую (у найтсталкера 5 уровней у пассивки, днем всегда 5 уровень и нулевой бонус, а по ночам реальный уровень)
Либо берешь за основу способности без иконки, либо засовываешь её в спеллбук и запрещяешь его для игрока, либо хак на память (лежит в барахолке) и прятать абилку.
ответ
Да.
ответ
Ептить, инвиз с созданием на месте инаизера дамика с нужной моделью, если требуется таймером двигаем дамика.

23

» WarCraft 3 / Скажи НЕТ триггерам

Похожие вопросы:

ответ
ну в принципе нет не обязательно, но удалять можно, хуже не будет - но для того чтобы был какой то толк от этого еще нужно будет сохранить куда то triggerconditon и triggeraction чтобы потом их удалить. Раньше вроде был баг с удалением триггеров (щяс его пофиксили или нет не знаю) но вот писать DestroyTrigger( GetTriggeringTrigger) в самом триггере не лучшая идея, это приводило к каким то багам (сам не видел) но в доте своя система удаления триггеров где они хранятся в запруженными в структуре минуту после удаляются, думаю это не спроста.
ответ
Но ведь сами по себе ошибки не происходят.
Причина подобного это А) - невнимательность либо твоя либо автора В) - программное обеспечение
Что бы в дальнейшем все было окей, просто сначала потести карту полностью что бы знать что и как должно быть, а потом вноси изменения, будь внимательней.
Еще советую связаться с автором и поговорить с ним об этой проблеме, или запросить у него еще 1 исходник да бы сверЯться с ним.
ответ
Ну вылет у тебя на функции, которая занимается отрисовкой графики. Она универсальная, там и частицы обрабатываются, и поверхности. Так что ошибка явно в модели, а какой и как - хрен его знает
ответ
Создать юнита который будет сидеть в кустах и кастовать скиллы.
ответ
Правильный ответ ДА и он здесь xgm.guru/p/renderedge/memoryhack?postid=408475#comment190

23

» WarCraft 3 / Звука смерти у юнита

Похожие вопросы:

ответ
Проверь, я удалил тебе это анимку через mdlvis

Удалял через эту программу
По поводу звука не подскажу, надо искать, но я бы попробовал найти ту модель где есть звук стрельбы при атаке и посмотреть как там сделано

23

» WarCraft 3 / Панель приказов

Похожие вопросы:

ответ
SсRealm, ,без пруфа эт фантазия, соряново. Если бы была карта, все бы уже сказали, как это делается.
ответ
Блин и ведь рылся же в блоге клампа в первую очередь.
А оказалось оно не в блоге =/
ответ
Добавить классификацию страж в редакторе обьектов и сделать триггер на отлов приказов юнита.
ответ
Карта из архива - patrol.w3x
ответ
Хз с чем связано, замечал такое при реплесе героя - если меню изучение способностей открыто, то оно открыто у вновь созданного героя, нужно убрать выбор у игрока и добавить выбор на героя снова.

23

» WarCraft 3 / Preload Exploit

Похожие вопросы:

ответ
никому не нужен этот хплоит, не в моде
ответ
Дата менеджер скачай, там все готовое и работает если ты так собрался сохранять данные...
ответ
Я тут не давно тему эту ковырял, для сохранения героя вам поможет
А то что показываете вы, сохраняет введённые в чат сообщения, никак не героя
ответ
ProximityCat:
Ну суть в том, что загруженную прелоадом информацию можно сохранить в кеш, а потом уже синхронизировать.

23

» WarCraft 3 / Модификации редактора

Похожие вопросы:

ответ
bladget, скорее всего (если у тебя Vista или W7 стоит), в старой папки остались "файлы совместимости", которые не удаляются просто так. В WoO много всякого мусора было...
ответ
Кажется проблему решили, ответ крылся в текстурах, скорее всего в типе сжатия Sequental JPEG при пресохранени с другим типом сжатия (Пересохранил текстуры в тга и обратно в блп) - проблема решилась (По крайней мере сейчас так кажется).
Из чего могу предположить, то при определенных обстоятельства Варик или система неадекватно воспринимает текстуры с этим типом сжатия и выпадает
ответ
Возможно, ты отключил UMSWE. Включи его в соответствующей вкладке и перезапусти редактор.

23

» WarCraft 3 / Инициализация карты

Похожие вопросы:

ответ
Была прям один в один ситуация. Игра крашица скорее всего от того, что что bounds выходит за пределы карты. Оставляй отступ от краев.
и даже не границы карты, а границы обзора вродебы ломают все

попробуй rect создать на карте, чтобы он был внутри границы обзора. И bounds выставляй по нему.
ответ
~8gabriel8:
Вроде работает, но не знаю, так ли у тебя работало ранее. Проверь. Касательно проблем с триггерами не уверен, но вроде бы видел триггеры с одинаковым названием на русском. На всякий случай изменил все названия триггеров с кириллицей на латиницу, так как проблемы с этим уже упоминали. В триггере инициализации было два события, что в итоге приводило бы к двойному срабатыванию, одно из них удалил. Также удалил несколько ретурнов, чтобы с одной стороны увидеть работоспособность триггеров, так удалил ретурн перед постановкой заданий в инициализации, с другой сомневался, что они корректно работают, а проверять было некогда, например, в цикле от 1 до 350 ретурн мог не пустить выполнение цикла дальше первого элемента. Но главное в том, что ты вводишь лишнии глобальные переменные вместо указателей (Triggering unit) или (Item being manipulated), причём их порой даже не используешь, просто устанавливаешь сначала, а в конце обнуляешь. Так не надо делать, пользуйся стандартными указателями на юнитов, типа (Triggering unit) или (Attacking unit), не удаляя или обнуляя их, а то только лишнюю нагрузку создаёшь для памяти, процессора и очереди операций. Обычно (Triggering player) по умолчанию является владельцем (Triggering unit), тоже используй сразу, а не плоди переменные. После удаления точки, не обнуляй её. А ещё попробуйте использовать какие-то оптимизаторы для карты, потому что её загрузка просто жесть - более 50 тысяч переменных для объектов редактор показывал) Только после оптимизации карта будет годна лишь для игры, а в редакторе не будет открываться.

Печатал уточнение и заснул)
Не указал, что вроде бы видел два триггера Безымянный триггер 002 или Безымянный триггер 005, одинаковые имена как раз могли быть причиной проблемы.

Самым лучшим комментарием считаю 17 от Hate.
ответ
Уже как задал вопрос вспомнил о статье на сайте
do
	local InitGlobalsOrigin = InitGlobals
	function InitGlobals()
        InitGlobalsOrigin()
        print("Инициализация")
    end
end
ответ
Спасибо всем за ответы.
PT153 подсказал в чем проблема.
Я использовал функции blizzard.j, но не вызвал в мейне call InitBlizzard()

23

» WarCraft 3 / Триггер

Похожие вопросы:

ответ
Вам сюда, господин хороший. Там есть ответы, практически, на все ваши вопросы.
ответ
спасибо, XGM Bot!
Нашел это - xgm.guru/p/blog-nvc123/ur1-3
ответ
Собственные попытки в студию, что не получается?
Напомним - ЭТО НЕ СТОЛ ЗАКАЗОВ, здесь задают вопросы про реализацию тех или иных вопросов, спрашивают про ошибки, оптмизацию, отдельные функции. Я не увидел в вашем вопросе ничего кроме невнятного описания механики способности, " вокргу кого то там огненные столбы возникают, и еще порча"...
ответ
Filius Dei, во вредные советы подъехали...
Русификатор очень поможет тем кто собрался ломануть чужую карту и сделать её мод, прям ваще жир...
Потом нубам вроде сударя не стоит бежать ломать чужую карту, чето там пытатся копировать - это все бесполезно, недавно был похожий вопрос - помогите взломать карту за вознаграждение, карту сломали - ну а дальше что? Он неспособен ничего сделать потому что просто не понимает как?
Играя в некую карту вы мните себя великими балансерами и картоделами, мол да чё там, шяс подправлю пару значений и все будет норм - нет не будет, это не так просто как может показаться, без понимания устройства карты и знания Jass вам нечего там делать, вы тупо ничего не сможете изменить, да даже скопировать и вставить!
Помните что без труда не выловишь и рыбку из пруда, т.е изи способов в 1 кнопку взять и запилить чужую карту так как вам хочется или вдруг стащить всех героев себе в карту нет, а уж теболее не случится так что вам кто то возьмет и все это сделает вам за спасибо...

23

» WarCraft 3 / Отмена способности

Похожие вопросы:

ответ
Pingvinromeo, проблема в том что ты фигню творишь
если спел применён в точку то точка есть
перемещение это 1 действие
за это время точка не исчезнет
короче пруфы того что не работает
ответ
Порядок строк ид приказа не сменить, это работает только у канала ибо это спец скилл для визуального эффекта. У морфов это работать не будет.
ответ
Очень просто, проверяем каст по приказу юза предмета и если цель неподходящая то дропаем предмет юниту под ноги, а потом заставляем подобрать его.
ответ
есть специальная функция на jass, которая называется MoveRect() или SetRect(). С помощью этих функций и перемещаете.
native MoveRectTo takes rect whichRect, real newCenterX, real newCenterY returns nothing
native SetRect takes rect whichRect, real minx, real miny, real maxx, real maxy returns nothing
ответ
~8gabriel8:
Например, есть направленный скилл - молоток горного короля, я заставляю триггерно нажать на способность и мне нужно через триггеры направить её на вражеского юнита (юнит уже лежит в специальной переменной)
Не нужно триггерно нажимать на способность, есть специальное действие для этого.
Действие Боевая единица - Issue order targeting on unit, там указываешь юнита со способностью, вражеского юнита в переменной и из списка приказов выбираешь способность Альянс (Горный Король) - Молот бурь. Если способность нестандартная, то указываешь в списке способность, на основе которой нестандартная сделана.

23

» WarCraft 3 / Скрыть миникарту.

Похожие вопросы:

ответ
Temak1, В константах нет такого пункта!
ответ
Ищи в редакторе объектов "пиктограмма на мини-карте" (или "нейтральное здание - значок на мини-карте") - это в редакторе войск.
Саму пиктограмму можно найти в игровом интерфейсе.
Это не скрывает надпись, но позволит добавить пиктограмму любому зданию.
Прикрепил бы скрины, но редактора поблизости нет.
ответ
Если у юнита есть способность рудника, то иконку не скрыть через РО. Есть функция альтернативной иконки на мини-карте. Она может быть только одна в карте. Импортируешь иконку с альфа-каналом (прозрачную):
SetAltMinimapIcon("war3mapImported\\InvisibleIcon.blp") -- .dds не видит
UnitSetUsesAltIcon(unit, true) -- принимает только созданного на карте юнита, не айди юнита из РО
-- всех юнитов можно перебрать через счетчик, например

Есть еще несколько баг репортов от игроков на форуме близзов о том, что этот параметр в РО не работает на версиях 1.32+:
ответ
Есть команда, которая задает границы карты, а также изменяет и размер отображения мини-карты
SetCameraBounds
Можно попробовать через GetLocalPlayer задать, но не знаю, будет ли десинк.
Или попробовать скрыть миникарту другим способом, только наверняка это будет на всех. поискать надо на хгм

если можно было бы достать рисунок мини карты - war3mapmap.blp. Обычно чтобы затемнить, то отключить просто импортируют рисунок с альфо-прозрачностью. Но это постоянные изменения, то есть оно будет у всех, чтобы динамично - я думаю, никак.

мини-карта - часть интерфейса,можно на рефордже можно отключить (это красивое решение, чем прятать так). это изучайте фреймы